namespace MetaView.Core;

/// <summary>
/// 提供配置对象的扩展方法。
/// </summary>
public static class SetupConfigObjectExtension
{
    /// <summary>
    /// 同步配置方法。
    /// 使用给定的配置对象进行设置。
    /// </summary>
    /// <param name="setupConfigObject">要配置的配置对象。</param>
    /// <param name="config">用于配置的配置对象。</param>
    [AsyncToSyncWarning]
    public static void Setup(this ISetupConfigObject setupConfigObject, Config config)
    {
        // 调用异步配置方法并忽略结果。这里解释了为什么需要忽略结果：可能是因为我们不关注异步操作的完成状态，或者我们已经处理了异步操作可能返回的所有必要结果。
        setupConfigObject.SetupAsync(config).GetFalseAwaitResult();
    }
}